home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
vol_200
/
223_01
/
xtoi.c
< prev
Wrap
Text File
|
1980-01-01
|
640b
|
23 lines
#include stdio.h
/*
** xtoi -- convert hex string to integer nbr
** returns field size, else ERR on error
*/
static int xd, t;
xtoi(hexstr, nbr) char *hexstr; int *nbr; {
xd = 0;
*nbr=0;
while(1)
{
if((*hexstr>='0')&(*hexstr<='9')) t=48;
else if((*hexstr>='A')&(*hexstr<='F')) t=55;
else if((*hexstr>='a')&(*hexstr<='f')) t=87;
else break;
if(xd<4) ++xd; else return ERR;
*nbr=*nbr<<4;
*nbr=*nbr+(*hexstr++)-t;
}
return xd;
}